iT邦幫忙

2022 iThome 鐵人賽

DAY 2
0
自我挑戰組

環島C一下自己的人生系列 第 2

[Day2]善用Function來執行一系列小動作

  • 分享至 

  • xImage
  •  

還記得在那青春年華的時期,被教授壓著頭去雙休資工系教授的程式設計的那些辛酸史現在非常感謝教授的用心良苦,大概當時的想法就是
:啊?Function?直接都打在Main Body就行了啊?幹嘛還要特別用Function來包裝?
:很麻煩耶,還要定義Function Name、定義傳進來的變數的資料型態、參數名字... etc
有這些想法大概都很正常?人類就是因為有這麼多疑問所以才進步得如此迅速?
回到正題,為何會提到Function的重要性?

善用Function的重要性

人家說好的Function能讓你上天堂這是真的,而首先要先弄清楚創建一個新Function的目地,通常都是將容易重複使用的功能來包裝成Function,但也並不是所有東西都需要使用Function來包裝,而使用Function的好處有什麼呢?

  • 較容易Debug及閱讀
    以一個習慣良好的程式設計者來說,通常都會留下註記或是將變數讓人一目瞭然,以利之後的閱讀者或使用者方便維護
    還有很多好處但我一時想不起來

接下來使用C以一個例子來示範

判斷質數的Function

回傳1則為質數,0則不是

int isPrime(int num){
    int i=2;
    While (i<=num){
        if(i!=num&&(num%i==0)){
            return 0;
        }
        else if (i==num){
            return 1;
            i++;
        }
    }
}

判斷整數的Function

X被Y整除回傳1,不能整除回傳0

int isFactor(int x, int y){
    if(x%y==0){
        return 1;
    }
    else return 0;
}

階乘

int ComputValue(int num){
    int a=1,i=1;
    while(i<=num){
        a*=i;
        i++;
    {
    return a;
}

如此一來就能使用自定義的Function來找出特定數值內的質數了

Void printinfo(int N){
    A=2;
    while(A<=N){
        if(isFactor(N,A)&&isPrime(A)){
            print("%d",ComputValue(A));
        }
        A++;
    }
}

上一篇
[Day1] 初次鐵人賽開奔啦
下一篇
[Day3]遞迴-某種意義上跟生活差不多?
系列文
環島C一下自己的人生24
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言